Software quality is of paramount importance especially in the context of security and reliability. There are tools that may be run on source code as part of the development process that check for a variety of common bugs or vulnerabilities as well as verify the source code's compliance with certain rules. Source code may also be tested to ensure that the source code does not have serious security problems such as buffer overflow. However, in any software system or product, the content that's actually shipped to the customer is the raw bits (referred to as a binary) of different executables that comprise the product. Today's systems for providing binary verification are inadequate.